package com.xique.park.bean.vo.web.ipc;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.util.Date;

/**
 * 命令管理列表实体
 *
 * @author xique
 */
@Data
public class CommandInfoVo {

    private Long id;

    /**
     * 命令字
     */
    private Integer cmd;

    /**
     * 编号
     */
    private String msgId;

    /**
     * 命令类型
     */
    private String type;

    /**
     * 命令名称
     */
    private String name;

    /**
     * 命令方向：p-d:平台到设备；d-p:设备到平台；d-d:设备到设备
     */
    private String direct;

    /**
     * 最近一次下发状态
     * <p>
     * <=0：应答命令
     * 1：请求命令，需要应答
     * 2：请求命令，不需应答
     * 3：请求命令，按请求命令带的主题应答，设备工作时用测试工具对设备发送指令
     */
    private Integer sendFlag;

    /**
     * 最近一次下发时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date sendTime;

    /**
     * 最近一次应答状态
     * <p>
     * 0：指令执行成功
     * -1：指令执行失败
     * -2：指令执行失败，参数格式错误
     * -3：要获取的信息不存在
     * -4：指令执行失败，不支持的指令
     */
    private Integer ackFlag;

    /**
     * 最近一次应答时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date ackTime;

    /**
     * 最近一次应答内容
     */
    private String ackContent;

}
